// components/operate-lead/lead.js
Component({
  /**
   * 组件的属性列表
   */
  properties: {
    show: {
      type: Boolean,
      value: true
    },
    // 提示框对象
    lead: {
      type: Object,
      value: {
        style: {},
      }
    },
    // 小三角
    truAngle: { 
      type: Object,
      value: {
        show: true,
        style: {},
        direction: ''
      }
    },
    // 关闭
    close: {
      type: Object,
      value: {
        show: true,
        style: {}
      }
    }
  },

  /**
   * 组件的初始数据
   */
  data: {

  },

  lifetimes: {
    attached: function() {
      // 在组件实例进入页面节点树时执行
      this.setStyle(this.data.lead.style, 'lead.styleStr');
      this.setStyle(this.data.truAngle.style, 'truAngle.styleStr');
    },
    detached: function() {
      // 在组件实例被从页面节点树移除时执行
    },
  },

  /**
   * 组件的方法列表
   */
  methods: {
    closeLead () {
      this.triggerEvent('closeLead', {show: false});
    },
    setStyle (style, attr) {
      let styleStr = '';

      for (let key in style) {
        const val = style[key];
        styleStr += `${key}: ${val};`
      }

      this.setData({
        [attr]: styleStr
      });
    }
  }
})
